#include "hypercall.h"
#include "util.h"
#include <xen/version.h>
-#include <xen/hvm/hvm_info_table.h>
+#include <xen/hvm/params.h>
/* memory map */
#define HYPERCALL_PHYSICAL_ADDRESS 0x00080000
int
main(void)
{
- struct hvm_info_table *t = get_hvm_info_table();
+ struct xen_hvm_param hvm_param;
puts("HVM Loader\n");
puts("Loading ROMBIOS ...\n");
memcpy((void *)ROMBIOS_PHYSICAL_ADDRESS, rombios, sizeof(rombios));
- if (t->apic_enabled)
+
+ hvm_param.domid = DOMID_SELF;
+ hvm_param.index = HVM_PARAM_APIC_ENABLED;
+ if (!hypercall_hvm_op(HVMOP_get_param, &hvm_param) && hvm_param.value)
create_mp_tables();
if (cirrus_check()) {
strncpy(va_hvm->signature, "HVM INFO", 8);
va_hvm->length = sizeof(struct hvm_info_table);
va_hvm->acpi_enabled = acpi;
- va_hvm->apic_enabled = apic;
va_hvm->nr_vcpus = vcpus;
set_hvm_info_checksum(va_hvm);
#endif
#include <public/sched.h>
#include <public/hvm/ioreq.h>
-#include <public/hvm/hvm_info_table.h>
#include <public/version.h>
#include <public/memory.h>